package com.cskaoyan.javase.basic._3operation._1assignment;

/**
 * 赋值运算符,指的是给变量赋值用的运算符,基本的赋值运算符有"="
 *  还有一些扩展的赋值运算符: "+=","-=","*=","/="等等
 *  无论是什么运算符,运算的方向是自右向左的,把右边的值赋值给左边
 *
 *  注意事项:
 *      1.扩展的赋值运算符,隐含了强制类型转换.但是隐含的强转仍然是强转,所以该数据溢出还是会溢出,不会因为隐含而发生变化
 *      2.赋值运算符组成的赋值表达式,仍然是一个表达式,它是一个有结果的表达式
 *          结果是等号右边 要赋值给变量的那个值
 *
 * @since 10:08
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo {
    public static void main(String[] args) {
        /*int a = 10;
        // a = a + 10
        a += 10;
        // a = a - 10
        a -= 10;
        // a = a * 10;
        a *= 10;*/

        byte a = 127;
        System.out.println(a = 120);
        // a = (byte) (a + 10);
        // System.out.println(a);
        // 等价于
        a += 10;
        // System.out.println(a);
        int b;
        // if ((a = 10) == 10){
        // }

    }
}
